
*-----------------------------------------------------------------------------
**                        Does a UBI affect voter turnout                   **
**                             Replication File                             **
*-----------------------------------------------------------------------------

*FIGURES AND TABLES IN THE PAPER

use "data_ubiturnout_aggregate.dta", clear


* set panel data
xtset id t


*-----------------------------------------------------------------------------
*                                 MAIN PAPER                                **
*-----------------------------------------------------------------------------

** Figure 1 : Turnout development over time

sort year id
egen cpsturnus=mean(turnout) if id!=2, by(year)
label var cpsturnus "Turnout U.S. (excl. Alaska)"
egen cpsturnak=mean(turnout) if id==2, by(year)
label var cpsturnak "Turnout Alaska"

egen epturnus=mean(turnoutep) if id!=2, by(year)
label var epturnus "Turnout U.S. (excl. Alaska)"
egen epturnak=mean(turnoutep) if id==2, by(year)
label var epturnak "Turnout Alaska"

graph drop _all

twoway (line cpsturnak year) (line cpsturnus year), xline(1982, lpattern(dot)) xlabel(1978[2]2000) scheme(s2mono) xlabel(, angle(45)) ylabel(0.4(0.05)0.7) title("Turnout CPS") name(cps)

twoway (line epturnak year) (line epturnus year), xline(1982, lpattern(dot)) xlabel(1978[2]2000) scheme(s2mono) xlabel(, angle(45)) ylabel(0.4(0.05)0.7) title("Turnout Elections Project") name(ep)

grc1leg cps ep, rows(1) scheme(s2mono)
graph export Figure1.pdf, replace


**Table 1 : DiD Fixed-Effects Model, CPS data ***

eststo CPS1: quietly xtreg turnout treatyear alaska dividend i.year if year<1984, ///
fe vce(cluster id)
eststo CPS4: quietly xtreg turnout treatyear alaska dividend i.year if year<1992, ///
fe vce(cluster id)
eststo CPS7: quietly xtreg turnout treatyear alaska dividend i.year, ///
fe vce(cluster id)
eststo CPS2: quietly xtreg turnout treatyear alaska dividend i.year lnpop ///
lnrgdp_pc africanamerican if year<1984, fe vce(cluster id)
eststo CPS5: quietly xtreg turnout treatyear alaska dividend i.year lnpop ///
lnrgdp_pc africanamerican if year<1992, fe vce(cluster id)
eststo CPS8: quietly xtreg turnout treatyear alaska dividend i.year lnpop ///
lnrgdp_pc africanamerican, fe vce(cluster id)
eststo CPS3: quietly xtreg turnout treatyear alaska dividend i.year lnpop lnrgdp_pc ///
africanamerican unemp gini pop65 edr if year<1984, fe vce(cluster id)
eststo CPS6: quietly xtreg turnout treatyear alaska dividend i.year lnpop lnrgdp_pc ///
africanamerican unemp gini pop65 edr if year<1992, fe vce(cluster id)
eststo CPS9: quietly xtreg turnout treatyear alaska dividend i.year lnpop lnrgdp_pc ///
africanamerican unemp gini pop65 edr, fe vce(cluster id)

esttab CPS1 CPS2 CPS3 CPS4 CPS5 CPS6 CPS7 CPS8 CPS9 using Table1.rtf, indicate ("Year FEs = *year*") replace b(%9.3f) se(%9.3f) stats(N r2, labels("N. of Obs." "Within R2") fmt(%9.0f %9.3f)) onecell nogaps varwidth(14) modelwidth(6) varlabels(_cons Constant) drop(alaska) label title("DiD Fixed-Effects Model, CPS data") mlabels("Short-Term 1978-1982" "Short-Term 1978-1982" "Short-Term 1978-1982" "Medium-Term 1978-1990" "Medium-Term 1978-1990" "Medium-Term 1978-1990" "Long-Term 1978-2000" "Long-Term 1978-2000" "Long-Term 1978-2000") nonotes addnotes("Notes: Regression coefficients shown with robust standard errors in parentheses. Dividend dummy is coded 1 for Alaska after the introduction of the dividend and 0 otherwise and is an interaction of a dummy for Alaska and a dummy for the treatment period starting in 1982. The estimates for the Alaska and the treatment dummy are not reported. ***p<0.01, **p<0.05, *p<0.1.")



** Table 2 : Generalized Differences-in-Differences Model Estimates**********


eststo GDD1: xtreg turnout i.alaska##c.div1000 i.year lnpop lnrgdp_pc africanamerican unemp gini pop65 edr if year<1984, fe vce(cluster id)

xtreg turnout div1000_interaction i.year lnpop lnrgdp_pc africanamerican unemp gini pop65 edr if year<1984, fe vce(cluster id)

eststo GDD2: xtreg turnout i.alaska##c.div1000 i.year lnpop lnrgdp_pc africanamerican unemp gini pop65 edr if year<1992, fe vce(cluster id)
eststo GDD3: xtreg turnout i.alaska##c.div1000 i.year lnpop lnrgdp_pc africanamerican unemp gini pop65 edr, fe vce(cluster id)
**post 1982
eststo GDD4: xtreg turnout i.alaska##c.div1000 i.year lnpop lnrgdp_pc africanamerican unemp gini pop65 edr if year>1980 & year<1992, fe vce(cluster id)
eststo GDD5: xtreg turnout i.alaska##c.div1000 i.year lnpop lnrgdp_pc africanamerican unemp gini pop65 edr if year>1980, fe vce(cluster id)

esttab GDD1 GDD2 GDD3 GDD4 GDD5 using Table2.rtf, replace b(%9.3f) se(%9.3f) stats(N r2, labels("N. of Obs." "Within R2") fmt(%9.0f %9.3f)) onecell nogaps varwidth(14) modelwidth(6) varlabels(_cons Constant) drop(lnrgdp_pc africanamerican unemployment gini pop65 edr) label title("Generalized DiD Model Estimates") mlabels("Short-Term 1978-1982" "Medium-Term 1978-1990" "Long-Term 1978-2000" "Post-Introduction 1982-1990" "Post-Introduction 1982-2000") nonotes addnotes("Notes: Regression coefficients shown with robust standard errors in parentheses. Dividend in USD / 1000 is the dividend payment in 2016 dollars and is an interaction of a dummy for Alaska and the dividend payments starting in 1982. The estimates for the Alaska and the payment amount dummy are not reported. Coefficients for the fixed effects are not reported. ***p<0.01, **p<0.05, *p<0.1.")






*-----------------------------------------------------------------------------
***                               APPENDIX                                 ***
*-----------------------------------------------------------------------------


** Table A3 : Variable Summary Statistics***********************

gen cpspresi=turnout if president == 1
gen cpsmid=turnout if president == 0

*Alaska 
tabstat turnout cpspres cpsmid pop rgdp_pc africanamerican unemp gini pop65 edr if id==2, statistics(mean median sd min max n)
tabstat dividend_real if id==2 & year>1980, statistics(mean median sd min max n)

*All other U.S. States
tabstat turnout cpspresi cpsmid pop rgdp_pc africanamerican unemp gini pop65 edr if id!=2, statistics(mean median sd min max n)



** Table A4 : The Dividend as a share of PI and Poverty Thresholds*********

gen divpi = dividend_nominal/pi_pc
tabstat dividend_nominal pi_pc divpi if id==2, by (year)

gen divpoverty = dividend_nominal/poverty
gen divpoverty_fam4 = (dividend_nominal*4)/poverty_fam4

tabstat poverty poverty_fam4 divpoverty divpoverty_fam4 ///
if id==2, by (year)


** Figure A2 : Population Growth Rates
sort year id

egen popgrowus=mean(popgrowth) if id!=2, by(year)
label var popgrowus "U.S. (excl. Alaska)"
egen popgrowak=mean(popgrowth) if id==2, by(year)
label var popgrowak "Alaska"
egen popgrowtx=mean(popgrowth) if id==44, by(year)
label var popgrowtx "Texas"
egen popgrowok=mean(popgrowth) if id==37, by(year)
label var popgrowok "Oklahoma"
egen popgrownv=mean(popgrowth) if id==29, by(year)
label var popgrownv "Nevada"

line popgrowus popgrowak popgrowtx popgrownv popgrowok year if year>1976, lpattern(solid longdash longdash_dot_dot shortdash dot) xline(1982, lpattern(dot)) xlabel(1978[2]2000) scheme(s2mono) xlabel(, angle(45))
graph export FigureA2.pdf, replace





** Table A5 : Parallel Trends Assumption****************

* Model (1) Placebo Dividend 

gen treatnew = 0
replace treatnew = 1 if year==1980

gen placebodiv = treatnew*alaska
label variable placebodiv "Placebo dividend"

eststo P1 : xtreg turnout treatnew alaska placebodiv i.year if year<1982, fe 

* Models (2-4) Synthetic control method, following Abadie et al. (2010; 2015)
tsset id year
sort year id
synth turnout lnpop lnrgdp_pc africanamerican unemp gini pop65 edr ///    
turnout(1978) turnout(1980), trunit(2) trperiod(1982) xperiod(1978 1980) nested

ereturn list

g w=1
replace w=0.011 if id==1
replace w=0.006 if id==3
replace w=0.006 if id==4
replace w=.026 if id==5
replace w=.005 if id==6
replace w=.004 if id==7
replace w=.008 if id==8
replace w=0 if id==9
replace w=.012 if id==10
replace w=.004 if id==11
replace w=.028 if id==12
replace w=.003 if id==13
replace w=.004 if id==14
replace w=.004 if id==15
replace w=.003 if id==16
replace w=.006 if id==17
replace w=.003 if id==18
replace w=.003 if id==19
replace w=.005 if id==20
replace w=.007 if id==21
replace w=.006 if id==22
replace w=.006 if id==23
replace w=.003 if id==24
replace w=.004 if id==25
replace w=.004 if id==26
replace w=.006 if id==27
replace w=.006 if id==28
replace w=.258 if id==29
replace w=.004 if id==30
replace w=.005 if id==31
replace w=.011 if id==32
replace w=.014 if id==33
replace w=.004 if id==34
replace w=.003 if id==35
replace w=.005 if id==36
replace w=.01 if id==37
replace w=.005 if id==38
replace w=.02 if id==39
replace w=.007 if id==40
replace w=.006 if id==41
replace w=.003 if id==42
replace w=.008 if id==43
replace w=.006 if id==44
replace w=.003 if id==45
replace w=.003 if id==46
replace w=.009 if id==47
replace w=.004 if id==48
replace w=.005 if id==49
replace w=.003 if id==50
replace w=.419 if id==51

xtset id t 
eststo PS1: xtreg turnout treatyear alaska dividend i.year [aw=w] if year<1984, fe vce(cluster id)
eststo PS2: xtreg turnout treatyear alaska dividend i.year [aw=w] if year<1992, fe vce(cluster id)
eststo PS3: xtreg turnout treatyear alaska dividend i.year [aw=w], fe vce(cluster id)

esttab P1 PS1 PS2 PS3 using TableA5.rtf, replace b(%9.3f) se(%9.3f) stats(N r2, labels("N. of Obs." "Within R2") fmt(%9.0f %9.3f)) onecell nogaps varwidth(14) modelwidth(6) varlabels(_cons Constant) drop(treatyear alaska treatnew) label title("Parallel Trends Assumption") mlabels("1978-1980" "1978-1982" "1978-1990" "1978-2000") nonotes addnotes("Notes: Regression coefficients shown with robust standard errors in parentheses. The dividend in Model 1 is a Placebo dividend that coded 1 for Alaska in 1980, after the placebo introduction of the treatment and 0 otherwise. Standard errors in Models 2-4 are clustered by the state. The synthetic control group was constructed using the covariates population size, GDP per capita, %Africanamerican, Unemployment rate, the Gini coefficient, % Population aged 65+ and EDR. The significance of the estimation coefficients is reported as ***p<0.01, **p<0.05, *p<0.1.")




** Table A7 : Comparing Midterm and Presidential Elections

eststo CPSMP1: quietly xtreg turnout treatyear alaska dividend lnpop lnrgdp_pc ///
africanamerican unemp gini pop65 edr i.year if year<1986 & president==0, fe vce(cluster id)
eststo CPSMP4: quietly xtreg turnout treatyear alaska dividend lnpop lnrgdp_pc ///
africanamerican unemp gini pop65 edr i.year if year<1986 & president==1, fe vce(cluster id)

eststo CPSMP2: quietly xtreg turnout treatyear alaska dividend lnpop lnrgdp_pc ///
africanamerican unemployment gini pop65 edr i.year if year<1992 & president==0, fe vce(cluster id)
eststo CPSMP5: quietly xtreg turnout treatyear alaska dividend lnpop lnrgdp_pc ///
africanamerican unemp gini pop65 edr i.year if year<1992 & president==1, fe vce(cluster id)

eststo CPSMP3: quietly xtreg turnout treatyear alaska dividend lnpop lnrgdp_pc ///
africanamerican unemp gini pop65 edr i.year if president==0, fe vce(cluster id)
eststo CPSMP6: quietly xtreg turnout treatyear alaska dividend lnpop lnrgdp_pc ///
africanamerican unemp gini pop65 edr i.year if president==1, fe vce(cluster id)

esttab CPSMP1 CPSMP2 CPSMP3 CPSMP4 CPSMP5 CPSMP6 using TableA7.rtf, replace b(%9.3f) se(%9.3f) stats(N r2, labels("N. of Obs." "Within R2") fmt(%9.0f %9.3f)) onecell nogaps varwidth(14) modelwidth(6) varlabels(_cons Constant) drop(treatyear alaska) label title("Comparing Midterm and Presidential Elections") mlabels("Midterm: 1978-1982" "Midterm: 1978-1990" "Midterm: 1978-2000" "Presidential: 1978-1984" "Presidential: 1978-1990" "Presidential: 1978-2000") nonotes addnotes("Notes: Regression coefficients shown with robust standard errors in parentheses. Dividend dummy is coded 1 for Alaska after the introduction of the dividend and 0 otherwise. The significance of the estimation coefficients is reported as ***p<0.01, **p<0.05, *p<0.1.")



** Table A8 : Robustness - DiD Estimations with Elections Project Data *************

eststo EP1: quietly xtreg turnoutep treatyear alaska dividend i.year lnpop lnrgdp_pc ///
africanamerican unemp gini pop65 edr if year<1984, fe vce(cluster id)
eststo EP2: quietly xtreg turnoutep treatyear alaska dividend i.year lnpop lnrgdp_pc ///
africanamerican unemp gini pop65 edr if year<1992, fe vce(cluster id)
eststo EP3: quietly xtreg turnoutep treatyear alaska dividend i.year lnpop lnrgdp_pc ///
africanamerican unemp gini pop65 edr, fe vce(cluster id)


* Table Output
esttab EP1 EP2 EP3 using TableA8.rtf, replace b(%9.3f) se(%9.3f) stats(N r2, labels("N. of Obs." "Within R2") fmt(%9.0f %9.3f)) onecell nogaps varwidth(14) modelwidth(6) varlabels(_cons Constant) drop(alaska treatyear) label title("DiD Estimations with Elections Project Data") mlabels("Short-Term 1980-1982" "Medium-Term 1980-1990" "Long-Term 1980-2000") nonotes addnotes("Notes: Regression coefficients shown with robust standard errors in parentheses. Number of Observations is denoted as N. of Obs. Dividend dummy is coded 1 for Alaska after the introduction of dividend and 0 otherwise. Coefficients for the fixed effects are not reported. The significance of the estimation coefficients is reported as ***p<0.01, **p<0.05, *p<0.1.")




** Table A9 : Robustness - DiD Estimations Comparing Only Singe Years, CPS Data*****

gen dp90 = 0
replace dp90 = 1 if year==1978 | year==1980 | year==1990

gen dp00 = 0
replace dp00 = 1 if year==1978 | year==1980 | year==2000

eststo DP1P: quietly xtreg turnout treatyear alaska dividend i.year if dp90, fe vce(cluster id)
eststo DP3P: quietly xtreg turnout treatyear alaska dividend i.year if dp00, fe vce(cluster id)
eststo DP2P: quietly xtreg turnout treatyear alaska dividend i.year lnpop lnrgdp_pc africanamerican unemp gini pop65 edr if dp90, fe vce(cluster id)
eststo DP4P: quietly xtreg turnout treatyear alaska dividend i.year lnpop lnrgdp_pc africanamerican unemp gini pop65 edr if dp00, fe vce(cluster id)

* Table Output
esttab DP1P DP2P DP3P DP4P using TableA9.rtf, replace b(%9.3f) se(%9.3f) stats(N r2, labels ("N. of Obs." "Within R2") fmt(%9.0f %9.3f)) onecell nogaps varwidth(14) modelwidth(6) varlabels(_cons Constant) drop(alaska treatyear) label title("DiD Estimations Comparing Only Singe Years, CPS Data")  mlabels("Medium Term Pre-Introduction period & 1990" "Medium Term Pre-Introduction period & 1990" "Long-Term Pre-introduction period & 2000" "Long-Term Pre-introduction period & 2000")nonotes addnotes("Notes: Regression coefficients shown with robust standard errors in parentheses. Number of Observations is denoted as N. of Obs. Dividend dummy is coded 1 for Alaska after the introduction of the dividend and 0 otherwise. The significance of the estimation coefficients is reported as ***p<0.01, **p<0.05, *p<0.1.")








